Skip to content

Handle checkout 500 retries with backoff#2428

Open
pillarsdotnet wants to merge 1 commit into
actions:mainfrom
pillarsdotnet:copilot/retry-500-exponential-backoff
Open

Handle checkout 500 retries with backoff#2428
pillarsdotnet wants to merge 1 commit into
actions:mainfrom
pillarsdotnet:copilot/retry-500-exponential-backoff

Conversation

@pillarsdotnet
Copy link
Copy Markdown

@pillarsdotnet pillarsdotnet commented May 11, 2026

Summary

I've been getting intermittent build failures in my GitHub Actions pipeline due to ephemeral GitHub 500-series server failures. I'd like to harden my workflows to retry these errors instead of failing immediately. Most such failures happen when calling actions/checkout. Therefore, this PR makes the following changes:

  • switch the shared retry helper to exponential backoff for retry attempts
  • cover the retry timing in unit tests, including transient 500-style failures
  • regenerate the bundled dist output

Switch the shared retry helper from randomized delays to exponential backoff so transient GitHub 500 errors are retried predictably. Add coverage for the backoff sequence and regenerate the bundled dist output.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@satmandu
Copy link
Copy Markdown

OMFG. Thank you for this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants